"""
为什么要加密：
信息在没有授权的情况下，不想被第三方知道

什么是加密？
就是把信息从一种状态(明文)变成另外一种状态(密文)


常见的加密算法有哪些？
哈希算法 、对称加密算法、非对称加密算法

哈希算法：
哈希算法其实一种思想，就是把任意长度的内容经过某种算法计算后能够产生固定长度的输出
md5
sha-1
sha-2
    128 bit
    256 bit
sha-3


哈希算法特点：
相同的输入会产生相同的输出
理论上不可逆

场景：
1、注册中的密码加密
2、防篡改
3、文件名的生成
"""

"""
goods_name
price 
desc
total

"""
import hashlib
# md5 算法

# md5 = hashlib.md5()  # 创建一个hash对象
# # print(md5, type(md5))
# text = "今天是一个好日子"
# md5.update(text.encode("utf-8"))
# cipher_text = md5.hexdigest()  # 获取密文
# # print(cipher_text, len(cipher_text))

# text2 = "今天是一个好日子"
# sha1 = hashlib.sha1()
# # print(sha1, type(sha1))
# sha1.update(text2.encode("utf-8"))
# cipher_text2 = sha1.hexdigest()  # 获取密文
# print(cipher_text2, len(cipher_text2))

"""
sha2系列
256 bit
512 bit

"""
# text3 = "今天是一个好日子"
# sha256 = hashlib.sha256()
# sha256.update(text3.encode("utf-8"))
# cipher_text3 = sha256.hexdigest() # 获取密文
# print(cipher_text3, len(cipher_text3))

# text4 = "今天是一个好日子"
# sha512 = hashlib.sha512()
# sha512.update(text4.encode("utf-8"))
# cipher_text4 = sha512.hexdigest() # 获取密文
# print(cipher_text4, len(cipher_text4))